Augmenting a real world by presenting a real space on which various pieces of information are superimposed is referred to as augmented reality (AR). A technique using a marker for AR, for example, a two-dimensional bar code printed on a card is taken as one of the techniques for such AR. In this technique, the two-dimensional bar code is discriminated as the marker for AR from a captured image of a camera, and three-dimensional image data associated with the marker is displayed on a display device while being superimposed at the position of the two-dimensional bar code.
Unfortunately, in this augmented reality technique, on a screen of the display device on which the captured image is displayed, the three-dimensional image data corresponding to the marker is simply displayed while being superimposed at the position of the marker, and hence visual effects are monotonous.
The present disclosure provides a computer-readable recording medium recording an information processing program causing a computer to function as: an image acquiring unit that acquires an image of a real space captured by an imaging device; a feature detecting unit that detects a first feature and a second feature from the image; a changing unit that changes an association of the first feature with one or more virtual objects by adding a virtual object associated with the second feature; an image generating unit that generates an image of a virtual space in which the virtual object associated with the first feature is placed on a basis of the first feature; and a display controlling unit that displays an image on a display device such that the image of the virtual space is visually recognized by a user while being superimposed on the real space.
Here, the display device may be connected as a peripheral device to the information processing apparatus according to the present disclosure, and may be connected thereto via a communication network or the like. Moreover, the information processing apparatus according to the present disclosure may be constructed in a virtual environment such as so-called cloud computing.
Moreover, the feature placed in the real space refers to, for example, so-called a marker for AR or a code such as a two-dimensional bar code. Then, such a feature may be given to, for example, a component such as a card. Moreover, such a feature is not limited to a dedicated marker, a code, and the like. Even items used for other purposes can be used as the feature as long as a display reference of the virtual object can be acquired therefrom.
According to the present disclosure, in a case where the first feature and the second feature are detected together, the virtual object associated with the second feature is associated with the first feature, and is displayed at a position based on the first feature.
Moreover, in a case where the first feature is continuously detected by the feature detecting unit while the second feature is not detected thereby, the changing unit maintains the change in the association of the first feature with one or more virtual objects. Consequently, even in a case where the second feature is moved out of the capturing range, the virtual object originally associated with the second feature continues to be displayed. As a result, an augmented reality technique rich in visual variety can be provided.
Note that the type of augmented reality technique to which the present disclosure is applied is not limited. The present disclosure can be applied to, for example, augmented reality techniques in which: a composite image obtained by superimposing a virtual space image on a captured image is displayed; and the virtual space image is thus visually recognized by the user while being superimposed on the real space. The present disclosure can also be applied to augmented reality techniques (for example, HUD: Head-Up Display) in which a virtual space image is projected on the field of view of the user, to be thereby visually recognized by the user while being superimposed on the real space.
Moreover, in a case where the first feature is not detected by the feature detecting unit for a predetermined period of time, the changing unit may reset the change in the association of the first feature with one or more virtual objects.
Moreover, in a case where the detection of the second feature is suspended and then restarted by the feature detecting unit, the changing unit may further associate the virtual object associated with the second feature with the first feature. Moreover, while the detection of the second feature is continued by the feature detecting unit, the changing unit may add, in a predetermined cycle, the virtual object associated with the second feature to the virtual object associated with the first feature.
As a result, each time the detection of the second feature is suspended and then restarted or in the predetermined cycle during the continuous detection of the second feature, the number of virtual objects that are placed in the virtual space on the basis of the first feature increases, and hence an augmented reality technique rich in visual variety can be provided.
Moreover, the changing unit may delete the association between the second feature and the virtual object after associating the virtual object associated with the second feature with the first feature. As a result, even in a case where the second feature is detected thereafter, the virtual object originally associated with the second feature is not displayed at a position based on the second feature.
Moreover, the computer may be caused to further function as a setting unit that sets such a motion that a virtual object newly associated with the first feature moves to a predetermined position corresponding to the first feature. As a result, a change in the association of this virtual object with the first feature can be implied to the user.
Moreover, the changing unit may change the association of the first feature with virtual object(s) by adding the virtual object associated with the second feature to a first virtual object associated in advance with the first feature, and the image generating unit may place the first virtual object and the virtual object in the virtual space on the basis of the first feature.
Moreover, the present disclosure can be interpreted as an information processing apparatus, an information processing system including one or more information processing apparatuses, a method to be executed by a computer, or a program to be executed by a computer. Moreover, the present disclosure can also be interpreted as a recording medium that records therein such a program, the recording medium being readable by computers, other apparatuses or machines, and the like. Here, the recording medium readable by the computers and the like refers to a recording medium that can accumulate therein information such as data and a program through an electrical, magnetic, optical, mechanical, or chemical action, and allows the computers and the like to read such information out thereof.